Computing devices are used to access various types of information using web-based and other services. For example, a user can operate a computing device to access and use a search system (e.g., a search engine) to find information. Search systems can query a dataset storing various types of information. In one example, the dataset can store information from websites. Search results returned to the user's computing device include information from one or more of these websites. In another example, the dataset can store analytics associated with the websites. To illustrate, the dataset can include information related to visitors, products purchased from the website, the time of the visits, the location of the visitors, the number of the visitors, and other website-related information. In this example, search results returned to the user's computing device include analytics-related information, such as how many visitors visited the website from a particular location.
Searching datasets can require use of a predefined format for the search input. However, this approach is limited as it does not allow deviation from the predefined format nor complex natural language searches. Further, this approach does not facilitate querying an analytics dataset. Other existing approaches use specialized interfaces and languages. For example, analytics information (e.g., information related to websites, products, etc.) stored in some database systems can only be accessed using complex search tools that require a search created by someone familiar with each tool's particular search interface and query language. For example, a business person who is unfamiliar with a particular database's query language specifics may have to interact with an information analyst to run reports and queries to get desired business information.
Some search systems allow users to enter natural language searches to query a dataset to find information. Generally, such natural language systems attempt to translate each of the words used in the natural language search to create a query to the dataset. This word-by-word-based approach to natural language-to-query language translation often fails to identify and appropriately search for the search concepts desired by the searcher. For example, a given word may be identified for use in a select search clause when it needs to be in the where search clause for the search to yield the desired results. Search revisions and supplementation are often required, requiring the inefficient use of time and computing resources.